#ifndef FORMATTER_H
#define FORMATTER_H

#include <string>

#include "../ObjectModel/TypeHierarchy.h"

namespace ObjectModel
{
	//! Base output generator
	class Formatter
	{
	protected:
		std::wstring _author;
		std::wstring _license;
		std::wstring _copyright;
		const TypeHierarchy& _types;

		Formatter(const TypeHierarchy& types)
			: _types(types)
		{
		}
	public:
		void setAuthor(const wchar_t* author) { _author = author; }
		void setLicense(const wchar_t* license) { _license = license; }
		void setCopyright(const wchar_t* copyright) { _copyright = copyright; }
	};
}

#endif // FORMATTER_H
